package com.fare.taluo.application.fetl;

import java.util.List;

import com.dayatang.domain.InstanceFactory;
import com.fare.taluo.application.plane.city.CityQueryApplication;
import com.fare.taluo.fetl.domain.entity.SinglePlaneInfoEntity;
import com.fare.taluo.vo.single.CabinVO;
import com.fare.taluo.vo.core.PlaneInfo;
import com.fare.taluo.vo.single.SinglePlaneInfoVO;

public interface SinglePlaneInfoApplication {
	
	/**
	 * 查询
	 * @param hbaseKey  官网或渠道key
	 * @param fromCity   出发城市三字码
	 * @param toCity	到达城市三字码
	 * @param flightBatchDate 出发日期  ‘2014-04-08’
	 * @param flightNo 航班号
	 * @return
	 */
	public List<SinglePlaneInfoVO> findPlaneInfoProperty(String hbaseKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
	
	/**
	 * 查找该航线下的航班信息
	 * @param carrierKey
	 * @param fromCity
	 * @param toCity
	 * @param flightBatchDate
	 * @param flightNo
	 * @return
	 */
	public List<CabinVO> findPlaneInfoByCondition(String grabChannel,String carrierKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
	/**
	 * 将查询结果转换为 PlaneInfo
	 * @return
	 */
	public List<SinglePlaneInfoEntity> findPlaneInfo(String hbaseKey,String carrierKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);

	public List<PlaneInfo> findPlaneInfo(String hbaseKey, String fromCity,
			String toCity, String flightBatchDate, String flightNo);
	
	public List<PlaneInfo> queryFreightPrice(String hbaseKey,String carrierKey,
			String fromCity, String toCity, String flightBatchDate);
}
